package apiday02;
//包装类的演示
public class IntegerDemo {
    public static void main(String[] args) {
        /*
        Integer i1 = new Integer(500);
        Integer i2 = new Integer(500);
        System.out.println(i1==i2);//false
        System.out.println(i1.equals(i2));//true

        //valueOf方式会复用一个字节范围内(-128到127)的数据
        //一般建议使用valueOf来定义包装类
        Integer i3 = Integer.valueOf(500);
        Integer i4 = Integer.valueOf(500);
        System.out.println(i3==i4);//false
        System.out.println(i3.equals(i4));//true

        Integer i5 = Integer.valueOf(5);
        Integer i6 = Integer.valueOf(5);
        System.out.println(i5==i6);//true
        System.out.println(i5.equals(i6));//true

        Integer i = 5; // 装箱
        // 触发自动拆箱 编译为：int j = i.intValue();
        int j = i; // 拆箱
         */

        // 演示包装类的常用操作：
        // 1、可以通过包装类来获取基本类型的取值范围：
        int max = Integer.MAX_VALUE; // 获取 int 最大值
        int min = Integer.MIN_VALUE; // 获取 int 最小值
        System.out.println("最大值："+max+"，最小值："+min);

        long max1 = Long.MAX_VALUE; // long 最大值
        long min1 = Long.MIN_VALUE; // long 最小值
        System.out.println("最大值："+max1+"，最小值："+min);

        // 2、包装类可以将字符串转换为对应的基本类型
        String s1 = "38";
        int age = Integer.parseInt(s1);
        System.out.println(age);

        String s2 = "123.456";
        double price = Double.parseDouble(s2);
        System.out.println(price);
    }
}